<?php
define('PROJECT_NAME', 'twargame');
define('ABSPATH', dirname(__FILE__) . '/../');             // Путь к папке, в которой расположен проект
require_once(ABSPATH . '../' . PROJECT_NAME . '_config.php');

if (!defined("PATH_SEPARATOR")) define("PATH_SEPARATOR", getenv("COMSPEC")? ";" : ":"); // Устанавливаем разделитель в зависимости от ОС

// Серверные пути
define('LOG', ABSPATH . '../' . PROJECT_NAME . '_error_log.txt'); // Путь к файлу, в который будет сохраняться лог ошибок
define('SYSTEM', ABSPATH . 'system/');            // Путь к папке, в которой расположены системные файлы
define('CLASSES', SYSTEM . 'classes/');           // Путь к папке, в которой расположены классы
define('AUTOLOAD', SYSTEM . 'classes/Autoload/'); // Путь к папке, в которой расположены файлы для обеспечения автозагрузки классов
define('IMAGES', ABSPATH . 'content/images/');    // Путь к папке, в которой расположены изображения
define('FILES', ABSPATH . 'content/files/');      // Путь к папке, в которой расположены файлы
define('LOGDIR', ABSPATH . '../log_' . PROJECT_FOLDER);      // Путь к папке с логами

#Пути для браузеров
define('W_ABSPATH', '/');         // Путь к главной странице сайта
define('W_ADMIN', W_ABSPATH . 'cms/');             // Путь к главной странице админки
define('W_HOTEL_ADMIN', W_ABSPATH);
define('W_HOTEL_ADMIN_FULLPATH', 'http://extranet.hotels.ru/');       // Полный путь к главной странице админки отелей
define('W_AJAX', W_ABSPATH . 'ajax/');             // Путь для AJAX-запросов
define('W_FULLPATH', 'http://' . SITE_URL );   // Полный путь к сайту
define('W_NONE_HTTPS_PATH', (!isset($_SERVER['HTTPS']) ? W_ABSPATH : W_FULLPATH));         // Путь к главной странице сайта
define('W_FILES', W_ABSPATH . 'content/files/');   // Путь к папке с файлами сайта
define('W_MOBILE_FULLPATH', 'http://m.' . DOMAIN . '/');       // Полный путь к главной странице мобильной версии

// Статический контент
define('W_IMAGES', '//' . IMAGES_STAT_DOMAIN . '/content/images/'); // Путь к папке с картинками сайта
define('W_CSS', '//' . CSS_STAT_DOMAIN . '/content/css/');       // Путь к папке с CSS
define('W_JS', '//' . JS_STAT_DOMAIN . '/content/js/');         // Путь к папке с javaScript

define('REL_IMAGES', '/content/images/'); // Путь к папке с картинками сайта
define('REL_CSS', '/content/css/');       // Путь к папке с CSS
define('REL_JS', '/content/js/');         // Путь к папке с javaScript

// Общие константы
define('W_TOPCLIENT', 'http://www.topclient.ru/'); //Полный путь к сайту

//define('W_IMAGES', W_STAT_FULLPATH . 'content/images/'); // Путь к папке с картинками сайта
//define('W_CSS', W_STAT_FULLPATH . 'content/css/');       // Путь к папке с CSS
//define('W_JS', W_STAT_FULLPATH . 'content/js/');         // Путь к папке с javaScript

ini_set("include_path", ini_get("include_path") . PATH_SEPARATOR . SYSTEM . 'classes'); //Добавляем include_path для автоматической загрузки файлов


// register autoloading
spl_autoload_register( function ($class) {
	
	$ext = array ('.php', '.inc');
	$filename = str_replace ( '_', '/', $class );
	foreach ( $ext as $x ) {
		//echo $filename . $x . "<br>\n";
		//echo filesize(SYSTEM . 'classes/' . $filename . $x) . "<br>\n";
		@include_once ($filename . $x);
		if (class_exists ( $class, false )) return true;
	}
	return false;
	
} );


date_default_timezone_set('Europe/Moscow');
set_error_handler(array('Service_Function','errorHandler'));
set_exception_handler(array('Service_Function','exceptionHandler'));


register_shutdown_function(function () {
	$error = error_get_last();
	if($error !== NULL) {
		Service_Function::errorHandler($error['type'], $error['message'], $error['file'], $error['line'], '', true);
	}	
});


if (!file_exists(TMP)) mkdir(TMP); 
$GLOBALS['api_request'] = array();
$GLOBALS['db_requests'] = array();

if (!defined('JSON_UNESCAPED_UNICODE')) 
	define('JSON_UNESCAPED_UNICODE', 0);

if (!defined('JSON_UNESCAPED_SLASHES')) 
	define('JSON_UNESCAPED_SLASHES', 0);

// подключаем общий для всех конфиг
require_once SYSTEM . '/config.php';

?>